import type {NextConfig} from "next";

const nextConfig: NextConfig = {
    // 基础配置
    reactStrictMode: false,

    // // 生产环境移除所有 console.*
    // compiler: {
    //     removeConsole: {
    //         exclude: ['error'] // 保留 console.error
    //     }
    // },
    //
    // // 生成 sourcemap（生产环境）
    // productionBrowserSourceMaps: true, images: {
    //     // 允许加载的图片域名
    //     domains: ['cdn.example.com'],
    //
    //     // 自定义图片加载器
    //     loader: 'custom',
    //     loaderFile: './src/lib/image-loader.ts',
    //
    //     // 响应式图片断点
    //     deviceSizes: [640, 1080, 1920],
    //
    //     // 图片格式优化
    //     formats: ['image/webp'],
    //
    //     // 禁用默认优化
    //     unoptimized: true
    // },
    // async redirects() {
    //     return [
    //         {
    //             source: '/old-blog/:slug',
    //             destination: '/news/:slug',
    //             permanent: true
    //         }
    //     ];
    // },
    //
    // async rewrites() {
    //     return [
    //         {
    //             source: '/api/proxy/:path*',
    //             destination: 'https://api.example.com/:path*'
    //         }
    //     ];
    // },
    //
    // async headers() {
    //     return [
    //         {
    //             source: '/(.*)',
    //             headers: [
    //                 {key: 'X-Content-Type-Options', value: 'nosniff'}
    //             ]
    //         }
    //     ];
    // },
    // env: {
    //     // API_URL: process.env.API_URL,
    //     // // 客户端可访问的变量（需以 NEXT_PUBLIC_ 开头）
    //     // NEXT_PUBLIC_GA_ID: 'G-XXXXXXX'
    // },
    // webpack: (config, {isServer, dev, webpack}) => {
    //     // // 仅客户端配置
    //     // if (!isServer) {
    //     //     config.resolve.fallback = {
    //     //         fs: false,
    //     //         path: require.resolve('path-browserify')
    //     //     };
    //     // }
    //     //
    //     // // 添加新规则
    //     // config.module.rules.push({
    //     //     test: /\.svg$/,
    //     //     use: ['@svgr/webpack']
    //     // });
    //     //
    //     // // 修改插件
    //     // config.plugins.push(
    //     //     new webpack.DefinePlugin({
    //     //         __IS_DEV__: JSON.stringify(dev)
    //     //     })
    //     // );
    //
    //     return config;
    // },
    // // 全局 ISR 超时时间（秒）
    // staticPageGenerationTimeout: 3600,
    //
    // // // 按路由配置
    // // async generateStaticParams() {
    // //     return {
    // //         '/blog/[slug]': async () => {
    // //             const posts = await fetchPosts();
    // //             return posts.map(post => ({slug: post.id}));
    // //         }
    // //     };
    // // },
    // experimental: {
    //     // // 新型预加载系统
    //     // optimizePackageImports: ['lodash-es'],
    // }
};

export default nextConfig;
